package com.qdxwx.data.mapper.user;

import com.qdxwx.common.page.PageRequest;
import com.qdxwx.models.user.UserBuy;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 用户购买的内容
 * Qdx NetSchool Platform
 * @author qdxwx
 * @updateTime 2022/5/25
 * @description
 */
@Repository
public interface UserBuyMapper {

    /**
     * 根据id获取一条记录
     */
    UserBuy get(long id);

    /**
     * 插入一条记录
     */
    int insert(UserBuy userBuy);

    /**
     * 根据id删除一条记录
     */
    int delete(long id);

    /**
     * 根据条件获取记录数
     */
    int count(@Param("e") UserBuy userBuy);

    /**
     * 根据条件获取记录
     */
    List<UserBuy> getList(@Param("e") UserBuy userBuy, @Param("page") PageRequest page);

    /**
     * 根据条件判断用户是否购买了内容
     * moduleId类别Id，infoId内容Id,userId用户Id
     */
    UserBuy checkIsBuy(long userId, int moduleId, long infoId);

    int updateCombine(long userId1, long userId2);
}
